猿吟鹤唳本无意,不知下有行人行

1、表格隔行变色且隔td单元格变色,2、多色的th

1、表格隔行变色且隔td单元格变色

感谢 boahy给的思路,让我抛却了各种想的索引值的写法。不然还得在索引值的大坑里面扑腾下去。
td,行和列交叉有重色块。 需要看每行的颜色。(这个地方的颜色要用
“各一行一种样式
Boahy 16:35:30
写两种样式就够了
Boahy 16:35:42
然后交替显示每种样式
Boahy16:35:55
哪里有什么叠加”)“

为了表现明显些,我准备把这张图由1 变成2.
12014-07-25_094755
22014-07-25_095722

td颜色 第一行 32 32 32, 隔行 21 21 21(从每行来看,再找共同点奇偶行相同)

//td颜色
$('.tb tr:even td:even,.tb tr:odd td:odd').css({'background':'#ddd'});
$('.tb tr:even td:odd').css({'background':'#ccc'});

.tb tr:even td:even    tr:even 偶数行里面的 偶数td 和 奇数行里面的 奇数 td
偶数第一行是tr th行。实际有表现的是 偶数第二行 标注黑色字号的2 1 2 1 中的 22 为#ddd是偶数td。

.tb tr:odd td:odd    tr:odd  奇数行里面的 奇数td  32 32的2

$(‘.tb tr:even td:odd’).css({‘background’:’#ccc’})    偶数行的 奇数td。

以往做的时候多考虑,奇偶行数,这次把奇偶行数tr和奇偶表格td全考虑到了。

(私以为不会有人会遇到这么奇葩的表格)

2、多色的th ,这个用了两种方法

① 利用th索引值,添加递增样式。

 //th 的颜色
        $('.tb th').each(function(){
                        i=$(this).index();
                        $(this).addClass('tab_th'+i);
        });

所需要建立多个class

css文件

.tb  .tab_th0{ background:#64badc;}
.tb  .tab_th1{ background:#fdd059;}
.tb  .tab_th2{ background:#ec985f;}
.tb  .tab_th3{ background:#ec61ae;}
.tb  .tab_th4{ background:#7ae85a;}
.tb  .tab_th5{ background:#7b9ca3;}
.tb  .tab_th6{ background:#f4c377;}
.tb  .tab_th7{ background:#ca837b;}

麻烦,不过有可能其他项目会用到

② 利用数组存储背景颜色赋值 √  这个好用,有多个表格也不怕了

function tb_th(id){
	//th颜色
		var Arr=['#64badc','#fdd059','#ec985f','#ec61ae','#7ae85a','#7b9ca3','#f4c377','#ca837b'];
		for(var j=0 ;j<Arr.length;j++){
			$(id+' tbody tr th:eq('+j+')').css({'background':Arr[j]});
		};
	};
	//表格添加th背景色
	tb_th('#tb1');
	tb_th('#tb2');

ps:要保证Arr的颜色值个数= 最大的表格th个数。Arr.length  >=   th.length

demo1(class名字)

demo2(数组)

发表评论

您的电子邮箱地址不会被公开。